home *** CD-ROM | disk | FTP | other *** search
/ MacWorld Secrets (4th Edition) / Mac Secrets CD 4th Ed.toast / Shareware & Freeware / KeyQuencer 1.2.2 / Developer’s toolkit / Common code / INITGestalt.h < prev    next >
Text File  |  1995-11-17  |  2KB  |  71 lines

  1.  
  2. /*---------------------------------------------------------------------------------------
  3.  
  4.     INITGestalt.h : a first pass at a header based on the INITGestalt proposal
  5.                     by Jeremy Roussak (jeremyr@dcs.qmw.ac.uk) and
  6.                     René G.A. Ros (rgaros@bio.vu.nl).
  7.  
  8.     Change History :
  9.  
  10.     10/22/94 DdE    Created.
  11.     10/22/94 DdE    Added my suggested changes.
  12.     10/24/94 JBR    Slight changes to INITGestaltRec layout
  13.     01/13/95 DdE    Update to INITGestalt 1.0a6 specs.
  14.     01/15/95 DdE    Update to INITGestalt 1.0a7 specs.
  15.     01/19/95 DdE    Updated for changes in the 1.0a8 specs.
  16.     01/22/95 RR        Updated for changes in the 1.0a9 specs.
  17.     01/31/95 DdE    Update for 1.0b1 specs.
  18.     03/14/95 DdE    Updated for 1.0 release. Changed kIGRecCurrentVersion, removed all
  19.                     references to IGControl, updated field names and added
  20.                     igPlatformType, added 68K alignment pragmas.
  21.     04/01/95 DdE    Changed custom types to types defined in the new Universal Headers.
  22.                     Removed kIGPPCNative flag definition (obsolete).
  23.  
  24. ---------------------------------------------------------------------------------------*/
  25.  
  26. #ifndef    __INITGestalt__
  27. #define    __INITGestalt__
  28.  
  29. #ifndef __GESTALTEQU__
  30. #include <GestaltEqu.h>
  31. #endif
  32.  
  33. enum InitGestaltDefines {
  34.     kIGRecType                    = 'JRRR',
  35.     kIGRecCurrentVersion        = 0x01008000,    // 1.0 release
  36.  
  37.     // bit constants for the igStdAttr field
  38.     kIGEnabled                    = 0,
  39.     kIGDebugVersion,
  40.     kIGDebugEnabled,
  41.     kIGAcceptsAEvents
  42.     };
  43.  
  44.  
  45. /*________________________________ INIT Gestalt Record ________________________________*/
  46.  
  47. #if PRAGMA_ALIGN_SUPPORTED
  48. #pragma options align=mac68k
  49. #endif
  50.  
  51. typedef struct {
  52.     OSType                    recType;        // must always be kGestaltRecordType
  53.     NumVersion                recVersion;        // the version of the record format
  54.     NumVersion                igVersion;        // version of installed software
  55.     UInt32                    igStdAttr;        // attribute bits defined by standard
  56.     UInt32                    reserved1;        // reserved
  57.     UInt32                    igCustomAttr;    // attribute bits defined by software
  58.     ProcessSerialNumber        igProcess;        // PSN of installer
  59.     ISAType                    igPlatformType;    // platform type
  60.     UInt8                    reserved2;        // reserved
  61.     UInt16                    reserved3;        // reserved
  62.     UInt32                    igRefCon;        // for private use
  63.     } INITGestaltRec, *INITGestaltRecPtr, **INITGestaltRecHdl;
  64.  
  65. #if PRAGMA_ALIGN_SUPPORTED
  66. #pragma options align=reset
  67. #endif
  68.  
  69.  
  70. #endif    /* __INITGestalt__ */
  71.